﻿using AutoMapper.Configuration.Annotations;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
using XDQ.VAT.Exams;
using XDQ.VAT.Students;

namespace XDQ.VAT.Classes
{
    public class AppClass : CreationAuditedAggregateRoot<Guid>, ISoftDelete, IMultiTenant
    {

        [MaxLength(200)]
        public virtual string Name { get; protected set; }


        [Required]
        public virtual int? Year { get; protected set; }

        public virtual Guid? TenantId { get; protected set; }

        [Required]
        [Ignore]
        public bool? IsDeleted { get; protected set; }

        [Ignore]
        bool ISoftDelete.IsDeleted { get => IsDeleted ?? false; set => IsDeleted = value; }



        protected AppClass() { }

        public AppClass(Guid id) : base(id)
        {

        }

    }
}
